public class PuntoDeVenta {

	String nombre;
	Distribuidor distribuidor;
	public ColaClientes colaDef;
	String[] lineasArchivo;

	public PuntoDeVenta(String nombre, Distribuidor distribuidorAsignado,
			String[] lineas) {
		super();
		this.distribuidor = distribuidorAsignado;
		this.nombre = nombre;
		this.colaDef = new ColaClientes();
		this.lineasArchivo = lineas;
	}

/***
 * 
 * Devuelve los clientes que se encuentran en la boleteria en el tiempo "tiempo"
 * 
 */
	public ColaClientes entranClientes(int tiempo) {
		for (int i = 0; i < lineasArchivo.length; i++) {
			if (!lineasArchivo[i].equalsIgnoreCase("Atendido")) {
				String[] datos = lineasArchivo[i].split(",");
				if (datos[5].equalsIgnoreCase(this.getNombre())
						&& Integer.parseInt(datos[1]) == tiempo) {
					Cliente cliente = new Cliente(datos[0],
							Integer.parseInt(datos[1]),
							Integer.parseInt(datos[2]), datos[3], datos[4],
							datos[5], Integer.parseInt(datos[6]),
							Integer.parseInt(datos[7]));
					colaDef.insertar(cliente);
					lineasArchivo[i] = "Atendido"; // Marco como atendido al
													// cliente
					System.out.println("En " + this.getNombre() + " Ingreso "
							+ cliente.getNombre());
					Archivos.escribirArchivo(
							"ArchivoSalida.txt",
							"En " + this.getNombre() + " Ingreso "
									+ cliente.getNombre() + "\n", true);
				}
			}
		}
		return colaDef;
	}

	public boolean estaVacio() {
		return colaDef.esVacia();
	}
/***
 * 
 * Se fija si existe ese evento en la boleteria
 * 
 */
	public boolean disponibilidadEvento(String nombreEvento) {
		for (Organizador eventos : this.getDistribuidor().getEventos()) {
			if (nombreEvento.equalsIgnoreCase(eventos.getNombreEvento())) {
				if (eventos.getEntradas().isEmpty()) {
					return false;
				} else
					return true;
			}
		}
		return false;
	}
	// ================================================================================
	// GETTERS AND SETTERS
	// ================================================================================
	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public Distribuidor getDistribuidor() {
		return distribuidor;
	}

	public void setDistribuidor(Distribuidor distribuidor) {
		this.distribuidor = distribuidor;
	}

}